/*Repetir el ejercicio anterior, pero, comprobar que el usuario introduce una sola 
palabra cada vez. Si introduce varias palabras, le damos  un mensaje de aviso, 
y no contamos esa vuelta.
Programa que pide palabras.
Acaba con la palabra'FIN'.
Nos dice que cuántos caracteres tiene la palabra de mayor longitud.
NOTA: Confiamos que el usuario introduce cada vez una sola palabra.*/


#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<ctype.h>

#define M 20

void main (void)
{	
	
	char palabra[M],fin[]="FIN";
	int i,chiv=1,swf=0,j,maxcara=0,numcara;
	
	clrscr();
	
	printf("Vaya introduciendo palabras por teclado, y para acabar introduzca la palabra fin");
	do
	{
		printf("\nTeclee una palabra por teclado: ");
		gets(palabra);
		fflush(stdout);
		numcara=strlen(palabra);
		chiv=1;
		for(i=0;i<numcara;i++)
		{
			if(palabra[i]==' ')
			{
				chiv=0;
				printf("\nIntroduzca una sola palabra cada vez");
				i=numcara;
			}
		}
		while(chiv)
		{
			if(numcara>=maxcara)
			{
				maxcara=numcara;
			}
			for (i=0;i<numcara;i++)
			{
				if ((palabra[i]>='a') && (palabra[i]<='z'))
					{
						palabra[i]=_toupper(palabra[i]);
					}
			}
			if(!strcmp(palabra,fin))
				{
					swf=1;
					printf("\nLa longitud mayor de las palabras introducidas es: %d",maxcara);
					getch();
				}
				chiv=0;
		}		
	}while(!swf);
}